embedded medical device software linux development bpo fda medical firmware outsourcing embedded software consulting outsource software medical device firmware